Algorithmique et Programmation - STI2D/STL

Les instructions séquentielles, conditionnelles et itératives

Exercice 1 : Instruction conditionnelle if else - Python

On considère la fonction ci-dessous :

def mystere(n):
    if n > 10:
        return n // 3
    else:
        return n % 1
Quelle est la valeur renvoyée par mystere(10)?
Quelle est la valeur renvoyée parmystere(11)?

Exercice 2 : Dichotomie vers racine de polynôme 2nd degré (inspiré par Bac S Asie 2015)

On considère l'algorithme ci-dessous :

\(a\)\(2\)
\(b\)\(3\)
Tant que \(b - a \gt 0,3\) :
\(x\)\(\dfrac{a + b}{2}\)
Si \(\operatorname{f}{\left (a \right )} \times \operatorname{f}{\left (x \right )} \gt 0\) :
\(a\)\(x\)
Sinon
\(b\)\(x\)

Si \(f(x) = -12 + 3x^{2}\), quel est le resultat de \(\dfrac{a + b}{2}\) ?

Exercice 3 : Appel de fonction Python avec une instruction conditionnelle if sans else

On considère la fonction Python suivante :

def mystere(n):
    if n > 4 :
        n =  n % 5
    return n
Que renvoie l'appel de la fonction mystere(3) ?
Que renvoie l'appel de la fonction mystere(5) ?

Exercice 4 : Instruction conditionnelle if elif else - Python

On considère la fonction ci-dessous :

def mystere(n):
    if n < 2:
        return n - 7
    elif n > 10:
        return n % 9
    else:
        return n + 3
Quelle est la valeur renvoyée par mystere(13)?
Quelle est la valeur renvoyée parmystere(-1)?

Exercice 5 : PGCD - Algorithme d'Euclide (inspiré par Bac S Antilles-Guyane 2015 pour spé)

Pour deux entiers naturels non nuls \(k\) et \(x\), on note \(\operatorname{r}{\left (k,x \right )}\) le reste dans la division euclidienne de \(k\) et \(x\). On considère l'algorithme suivant :

   \(u\)\(\operatorname{r}{\left (k,x \right )}\)
   Tant que \(u \neq 0\) :
   \(k\)\(x\)
   \(x\)\(u\)
   \(u\)\(\operatorname{r}{\left (k,x \right )}\)
   Afficher « \(x\) »
[A]Si ??? :
   Afficher « \(k\) et \(x\) sont premiers entre eux »

Faire fonctionner cet algorithme avec \(k=46\) et \(x=16\) en indiquant les valeurs de \(k\), \(x\) et \(u\) à chaque étape.

{"data": [["46", "?", "?"], ["16", "?", "?"], ["?", "?", "?"]], "header_left": ["k", "x", "u"]}

Cet algorithme donne en sortie le PGCD des entiers naturels non nuls \(k\) et \(x\). Par quelle expression doit on compléter la ligne [A] pour qu’il indique si deux entiers naturels non nuls \(k\) et \(x\) sont premiers entre eux ou non.

False